Authentication এবং Authorization কী? গাইড ও নোট

Web Development - এমভিসি ফ্রেমওয়ার্ক (MVC Framework) - Authentication এবং Authorization
352

Authentication এবং Authorization এমভিসি ফ্রেমওয়ার্কে দুটি গুরুত্বপূর্ণ ধারণা, যা অ্যাপ্লিকেশনের নিরাপত্তা ব্যবস্থাকে পরিচালনা করে। এই দুটি প্রক্রিয়া অ্যাপ্লিকেশনের ইউজারদের পরিচয় যাচাই এবং তাদের কাছে কী ধরনের অ্যাক্সেস থাকবে, তা নিয়ন্ত্রণ করে। চলুন, এই দুটি ধারণা বিস্তারিতভাবে আলোচনা করি।

Authentication (অথেনটিকেশন)


Authentication হলো একটি প্রক্রিয়া যার মাধ্যমে অ্যাপ্লিকেশন নিশ্চিত করে যে ইউজারটি আসলেই সে যে দাবী করছে, তা সত্য। সহজভাবে বললে, অথেনটিকেশন হলো ইউজারের পরিচয় যাচাই। এটি নিশ্চিত করে যে ইউজারটি সঠিক পাসওয়ার্ড বা অন্যান্য লগইন তথ্য প্রদান করেছে কিনা।

Authentication প্রক্রিয়া

  1. ইউজার লগইন তথ্য প্রদান: ইউজার তাদের ইউজারনেম এবং পাসওয়ার্ড ফর্মের মাধ্যমে প্রদান করে।
  2. তথ্য যাচাই: সার্ভার ইউজারের দেওয়া তথ্য ডাটাবেসের সাথে তুলনা করে যাচাই করে।
  3. টোকেন/সেশন তৈরি: সফল অথেনটিকেশন হলে, সার্ভার ইউজারকে একটি সেশন বা টোকেন প্রদান করে, যা পরবর্তীতে অ্যাপ্লিকেশনে লগড ইন অবস্থায় ইউজারের পরিচয় নিশ্চিত করতে ব্যবহৃত হয়।

Authentication উদাহরণ (ASP.NET MVC)

public ActionResult Login(User user)
{
    if (ModelState.IsValid)
    {
        // ইউজারের তথ্য যাচাই
        var loggedInUser = _userService.Authenticate(user.Username, user.Password);
        
        if (loggedInUser != null)
        {
            // সেশন বা টোকেন তৈরি
            FormsAuthentication.SetAuthCookie(loggedInUser.Username, false);
            return RedirectToAction("Dashboard");
        }
        else
        {
            ModelState.AddModelError("", "Invalid username or password.");
        }
    }
    
    return View();
}

এখানে:

  • ইউজার নাম এবং পাসওয়ার্ড যাচাই করা হয়।
  • যদি যাচাই সফল হয়, তবে সেশন টোকেন তৈরি হয় এবং ইউজারকে ড্যাশবোর্ডে রিডাইরেক্ট করা হয়।

Authorization (অথরাইজেশন)


Authorization হলো একটি প্রক্রিয়া যা ইউজারের অনুমতিপত্র যাচাই করে। এটি নিশ্চিত করে যে ইউজারটি কিছু নির্দিষ্ট কার্যক্রম বা রিসোর্স অ্যাক্সেস করার অনুমতি রাখে কিনা। সহজভাবে বললে, অথরাইজেশন হলো ইউজারের অ্যাক্সেস অনুমোদন

Authorization প্রক্রিয়া

  1. ইউজার অথেনটিকেটেড হয়েছে কিনা চেক: প্রথমে ইউজারকে অথেনটিকেট করা হয়।
  2. রোল বা পারমিশন যাচাই: ইউজারের রোল (যেমন: অ্যাডমিন, ইউজার, মডারেটর) বা নির্দিষ্ট পারমিশন যাচাই করা হয়। এর ভিত্তিতে ইউজারকে বিভিন্ন রিসোর্স বা অ্যাকশন অ্যাক্সেস করার অনুমতি দেওয়া হয়।
  3. অ্যাক্সেস নিয়ন্ত্রণ: ইউজার যদি নির্দিষ্ট রোল বা পারমিশন না থাকে, তবে তাকে অ্যাক্সেস প্রদান করা হয় না।

Authorization উদাহরণ (ASP.NET MVC)

[Authorize(Roles = "Admin")]
public ActionResult AdminDashboard()
{
    return View();
}

এখানে:

  • Authorize অ্যাট্রিবিউট ব্যবহার করে শুধুমাত্র Admin রোলধারী ইউজারদের অ্যাক্সেস দেওয়া হয়েছে।
  • যদি ইউজার এই রোলের অন্তর্ভুক্ত না হয়, তবে অ্যাপ্লিকেশন তাকে অ্যাক্সেস না দেওয়ার জন্য লগইন পেজ বা "Access Denied" পেজে রিডাইরেক্ট করবে।

Authentication এবং Authorization এর মধ্যে পার্থক্য


  1. Authentication:
    • উদ্দেশ্য: ইউজারের পরিচয় যাচাই।
    • প্রক্রিয়া: ইউজার নাম, পাসওয়ার্ড বা অন্য কোনো উপায়ে ইউজারের পরিচয় যাচাই করা।
    • উদাহরণ: লগইন পৃষ্ঠা।
  2. Authorization:
    • উদ্দেশ্য: ইউজারের অনুমতি যাচাই।
    • প্রক্রিয়া: ইউজারকে নির্দিষ্ট অ্যাক্সেস দেওয়ার আগে তার রোল বা পারমিশন যাচাই করা।
    • উদাহরণ: নির্দিষ্ট পেজ বা কার্যকলাপে অ্যাক্সেস সীমাবদ্ধ করা।

সার্বিকভাবে


Authentication এবং Authorization এমভিসি ফ্রেমওয়ার্কে অ্যাপ্লিকেশন নিরাপত্তা নিশ্চিত করার জন্য অপরিহার্য। অথেনটিকেশন ইউজারের পরিচয় যাচাই করে, এবং অথরাইজেশন ইউজারের অনুমতি নিশ্চিত করে। এই দুটি প্রক্রিয়া একত্রে কাজ করে অ্যাপ্লিকেশনে নিরাপদ এবং সীমাবদ্ধ অ্যাক্সেস নিশ্চিত করতে সাহায্য করে।

Content added By
Promotion

Are you sure to start over?

Loading...